1. Field of the Invention
The present invention relates to a controller of an electric power-steering system constituted so as to supply a steering assist force produced by an electric motor to the steering system of an automobile or vehicle, particularly to a controller of an electric power-steering system making it possible to improve such steering performances as the overall control accuracy and follow-up characteristic by very accurately estimating a motor angular speed without being influenced by temperature or the like. Moreover, the present invention relates to a controller of an electric power-steering system for economically detecting a motor current value when using an H-bridge circuit of semiconductor elements for a motor driving circuit.
2. Description of the Prior Art
An electric power-steering system for a vehicle detects a steering torque and a vehicle speed generated at a steering shaft by operating a steering wheel, computing a steering assist command value in accordance with the detection signal, and assisting the steering force of the steering wheel by driving a motor in accordance with the computed steering assist command value. An electronic control circuit including a microcomputer (or microprocessor) is used to compute the steering assist command value and control the motor in accordance with the command. The above conventional electric power-steering system performs the feedback control of a motor current in order to accurately generate an assist torque (steering assist torque). The feedback control adjusts a motor applied voltage so that the difference between a current control value and a detected motor-current value decreases and the motor applied voltage is adjusted by adjusting the duty ratio of PWM (Pulse Width Modulation) control in general.
In this case, a general structure of the electric power-steering system is explained below by referring to FIG. 1. A shaft 2 of a steering wheel 1 is connected to a tie rod 6 of traveling wheels through reduction gears 3, a universal joints 4a and 4b, and a pinion/rack mechanism 5. The shaft 2 is provided with a torque sensor 10 for detecting the steering torque of the steering wheel 1 and a motor 20 for assisting the steering force of the steering wheel 1 is connected to the shaft 2 through a clutch 21 and the reduction gears 3. Electric power is supplied to a control unit 30 for controlling the power steering system from a battery 14 through an ignition key 11. The control unit 30 computes a steering assist command value I of an assist command in accordance with a steering torque T detected by the torque sensor 10 and a vehicle speed V detected by a vehicle speed sensor 12 and controls the current to be supplied to the motor 20 in accordance with the computed steering assist command value I. The clutch 21 is turned on/off by the control unit 30 and it is turned on (connected) under the normal operating state. Moreover, the clutch 21 is turned off (disconnected) when the control unit 30 judges that the power steering system is broken down and the power supply (voltage Vb) of the battery 14 is turned off by the ignition key 11.
The control unit 30 mainly comprises a CPU. FIG. 2 shows general functions to be executed by a program in the CPU. For example, a phase compensator 31 does not show a phase compensator serving as independent hardware but it shows a phase compensating function to be executed by the CPU. Functions and operations of the control unit 30 are described below.
The steering torque T detected and inputted by the torque sensor 10 is phase-compensated by the phase compensator 31 in order to improve the stability of the steering system and a phase-compensated steering torque TA is inputted to a steering assist command value computing unit 32. Moreover, the vehicle speed V detected by the vehicle speed sensor 12 is also inputted to the steering assist command value computing unit 32. The steering assist command value computing unit 32 determines the steering assist command value I which is a control target value of a current to be supplied to the motor 20 in accordance with the inputted steering torque TA and the inputted vehicle speed V, which is provided with a memory 33. The memory 33 stores the steering assist command value I corresponding to the steering torque by using the vehicle speed V as a parameter and the steering command value computing unit 32 computes the steering assist command value I. The steering assist command value I is inputted to a subtractor 30A and also inputted to a differential compensator 34 of a feedforward system for rising a response speed, a deviation (I-i) of the subtractor 30A is inputted to a proportional computing unit 35, and the proportional output of the proportional computing unit 35 is inputted to an adder 30B and also inputted to an integral computing unit 36 for improving the characteristic of a feedback system. Outputs of the differential compensator 34 and the integral computing unit 36 are also additionally inputted to the adder 30B and a current control value E which is a result of addition by the adder 30B is inputted to a motor driving circuit 37 as a motor driving signal. A motor current value "i" of a motor 20 is detected by a motor current detecting circuit 38, inputted to the subtractor 30A, and feedbacked.
A structure of the motor driving circuit 37 is described below by referring to FIG. 3. The motor driving circuit 37 comprises an FET gate driving circuit 371 for driving the gates of field effect transistors (FETs) FET1 to FET4 in accordance with the current control value E supplied from the adder 30B, an H-bridge circuit including the FET1 to FET4, and a boosting power supply 372 for driving the high side of the FET1 and FET2. The FET1 and FET2 are turned on/off in accordance with a PWM signal of a duty ratio D1 determined in accordance with the current control value E and the magnitude of a current Ir actually flowing through the motor 20 is controlled. The FET3 and FET4 are driven in accordance with a PWM signal of a duty ratio D2 defined by a predetermined linear-function formula ("D2=a.multidot.D1+b" when assuming "a" and "b" as constants) in a region where the duty ratio D1 is small and turned on/off in accordance with the rotational direction of the motor 20 determined by the code of a PWM signal after the duty ratio D2 also reaches 100%.
FIG. 4 shows the relation between the on/off state of the FET1 to FET4 of the H-bridge circuit shown in FIG. 3 and the current flowing through the motor 20. For example, when the FET3 is turned on, the current flows through the FET1, motor 20, FET3, and resistance R1 (mode A) and a positive-directional current flows through the motor 20. Moreover, when the FET4 is turned on, the current flows through the FET2, motor 20, FET4, and resistance R2 (mode A) and a negative-directional current flows through the motor 20. Therefore, the current control value E supplied from the adder 30B also serves as a PWM output. Furthermore, when the FET1 is turned off and the FET3 is turned on, the current flows through the regenerative diode of the FET4 (mode B). When the FET1 and FET3 are turned off, the magnetic energy stored in the motor 20 is converted into electric energy and the current flows through the regenerative diodes of the FET2 and FET4 (mode C). Then, the motor current detecting circuit 38 detects the magnitude of the positive-directional current in accordance with the voltage drop at the both ends of the resistor R1 and moreover detects the magnitude of the negative-directional current in accordance with the voltage drop at the both ends of the resistor R2. The motor current value "i" detected by the motor current detecting circuit 38 is inputted to the subtracter 30A and feedbacked.
FIGS. 5A and 5B show an effective current Ie and an effective voltage Vm in the modes A to C. That is, the mode B is a regenerative mode in the H-bridge circuit and in the mode B, there is a loss due to substrate resistance or on-voltage of a diode. Therefore, a difference occurs between the occurrence times of the modes A and C. As a result, the effective voltage Vm is generated and an impedance "R=Vm/Ie" is generated.
In the case of the above electric power-steering system, however, when the steering mechanism reaches its limit position as the result of fully turning the steering wheel or when the steering wheel cannot be turned because a tire contacts a curbstone on a road (hereafter, this state is referred to as "end contact"), an excessive current continuously flows through a motor and thereby, the motor is burned because a steering torque is produced by operating the steering wheel though the motor for assisting a steering force is not rotated and thus, electric power is wastefully consumed. Therefore, a structure is used which slowly decreases the current to be supplied to the motor when it is judged that the end contact state occurs.
The end contact state can be judged by directly detecting a steering angular speed by a steering angular speed sensor or in accordance with the angular speed of a motor. To obtain the angular speed of the motor, the following methods are known: a method of detecting the rotational speed of the motor and presuming an angular speed of the motor in accordance with the rotational speed of the motor and a method of presuming a rotational speed of the motor in accordance with a voltage to be supplied to the motor and the motor current and presuming an angular speed of the motor in accordance with the presumed motor rotational speed.
However, the method of detecting the rotational speed of the motor in order to obtain the angular speed of the motor requires new parts such as a rotational-speed sensor and causes the cost to increase. Moreover, when presuming the rotational speed of the motor in accordance with a voltage to be supplied to the motor and the motor current, problems occur that the presumed value of the rotational speed is fluctuated due to the change of environmental temperature or fluctuation in battery voltage and errors are produced.
To solve the above problems, the present applicant proposed a method of presuming an angular speed of a motor in accordance with a back electromotive force generated in the motor, a voltage between terminals of the motor, and a detected motor-current value (refer to Japanese Patent Laid-Open No. 67262/1996).
That is, a back electromotive force KT.multidot..omega. generated in a motor can be shown by the following expression (1). EQU K.sub.T .multidot..omega.=(Vm-Ri) (1)
where
K.sub.T : back electromotive force constant, PA1 .omega.: angular speed of motor, PA1 Vm: voltage between motor terminals, PA1 R: resistance between motor terminals, and PA1 i: motor current (Detected value).
Therefore, the angular speed .omega. of the motor can be shown by the following expression (2). EQU .omega.=(Vm-R.multidot.i)/K.sub.T (2)
That is, the back electromotive force constant K.sub.T and the resistance R between motor terminals are values intrinsic to the motor and the voltage Vm between terminals of the motor is determined by a battery voltage Vb and a duty ratio D which is an on/off time ratio when driving the motor in accordance with driving pulses (Vm=Vb.times.D). Therefore, it is possible to presume the angular speed .omega. of the motor by obtaining a detected motor-current value i.
In the case of the operation of a presumed value of the angular speed .omega. of the above motor, the back electromotive force constant K.sub.T and the resistance R between terminals of the motor are handled as intrinsic values. These values are determined by the electrical characteristics of a model motor specified in a design specification. However, fluctuation due to manufacturing errors or variation due to the change of operating environmental temperatures occurs in the back electromotive force constant K.sub.T and the resistance R between terminals of the motor to be actually mounted on a vehicle, which are electrical characteristics of the motor. Therefore, a slight error is produced between the electrical characteristics of the model motor and those of the motor to be actually mounted on the vehicle. As a result, an error also occurs in the back electromotive force constant K.sub.T and an error is included in the presumed value of the motor angular speed .omega.. This error is referred to as an offset error.
When the rotational state of the motor is judged by using the presumed value of the motor angular speed .omega. including the offset error, an erroneous signal indicating that the motor is rotating may be outputted though a steering wheel is held, that is, the motor does not rotate. To prevent the erroneous signal, it is considered to provide constant dead zones "a" and "a" for the angular speed .omega. of the motor as shown in FIG. 6 and handle the angular speed .omega. as zero in a range where the back electromotive force K.sub.T .multidot..omega. is small. In this case, however, a problem occurs that the angular speed .omega. cannot be presumed in the range where the back electromotive force K.sub.T .multidot..omega. is small.
Moreover, in general, characteristics of a driving method can be ignored when a PWM-driving frequency is high enough to the electrical time constant of the motor. However, when a motor driving method uses a method of PWM-driving top and bottom FETs located at a diagonal in the H-bridge circuit shown in FIG. 3, a dead zone DB is produced in duty ratio to motor current characteristic as shown in FIG. 7. In FIG. 7, a curve B1 shows normal steering (angular speed.omega.=0) and a curve A1 shows wheel return steering. Because the current intermittently flows at a PWM cycle in a dead zone DB, this case is referred to as "intermittent mode". The intermittent mode is a mode in which a current I becomes equal to "0"in one cycle of PWM as shown in FIG. 8A. When the current I does not become equal to "0" in one cycle as shown by the broken lines in FIG. 8A, the current when I is not zero is sequentially superimposed and a "continuous mode" is set in which the current I increases as shown in FIG. 8B. In the continuous mode, a transient response corresponding to the electrical characteristic of the motor is shown when the PWM cycle is short enough compared to the electrical time constant of the motor. Moreover, in the intermittent mode, because a driving method influences current and the effective voltage applied to the motor, the influence of the driving method on the impedance of a driving system cannot be ignored.
Therefore, in the case of a conventional presuming method in which the influence of a driving system is not considered, a motor angular speed presuming error occurs because an impedance model is different from an actual model. That is, because the conventional presuming method presumes a motor applied voltage in accordance with a duty ratio and a battery voltage, an error occurs in the presumed value of the motor applied voltage. As a result, as shown by the characteristic V1 in FIG. 14, a problem occurs that presumption is executed as if a motor rotates in spite of the fact that the motor does not rotate or an angular speed is presumed as a too small value in a region where current is small. That is, a back electromotive force is obtained as the difference between the characteristic V2 when .omega. equals "0" and the actual characteristic V1 on the graph of the current I to the voltage Vm between motor terminals shown in FIG. 14. Therefore, the difference "e" between the characteristic V2 when .omega. equals 0 and the actual characteristic V1 becomes an offset error and thus, the presumption is executed as if the motor rotates in spite of the fact that .omega. equals 0. Because the conventional presuming model V2 does not consider the impedance in the intermittent mode, an offset error occurs. In FIG. 14, ".gamma.1" equals Vm/Ie and ".gamma.2" denotes an impedance almost equal to the internal resistance of the motor. The above control system performs the compensation of the inertia of the motor, control of the astringency of the yaw rate of a vehicle, and compensation of the friction of the electric power-steering system. However, these controls do not completely function and thus, the steering performance is deteriorated.
Moreover, in the case of the motor current detecting circuit 38, currents in both directions must be detected for the resistors R1 and R2 and therefore, there is a disadvantage that a bidirectional-detection-type current detecting circuit becomes expensive. When using a unidirectional-detection-type inexpensive current detecting circuit, the effective current Im shown in FIG. 9C must be measured by controlling the FET1 to FET4 by the first duty ratio D1shown in FIG. 9A and the second duty ratio D2 shown in FIG. 9B in the FET gate driving circuit 371. However, when measuring current as the drop voltage generated in the resistors R1 and R2 inserted into an arm in series in the unidirectional-detection-type current detecting circuit, the measurement shown in FIG. 9C cannot be made or the current i(C) in the mode C in FIG. 9D cannot be detected, a detected toothless current is obtained, and resultingly the average current between the currents i(A) and i(B) in the mode C in FIG. 9D is obtained. Therefore, the accurate current Im cannot be detected. That is, it is possible to show the motor current Im actually flowing though the motor 20 in each of the modes A to C in one cycle of a PWM signal by the following expression (3). EQU Im=i(A)+i(B)+i(C) (3)
Moreover, the total sum of the current "i" detected by the unidirectional-detection-type current detecting circuit is shown by the following expression (4) because the current i(C) in the mode C is not detected. EQU i'=i(A)+i(B) (4)
To accurately measure the motor current Im by the unidirectional-type current detecting circuit, it is necessary to hold the current i(B) in the mode B by a sample hold circuit, interpolate the current i(C) in the mode C, and moreover pass the current i(C) through a low-pass filter for removing noises. Therefore, a problem occurs that the cost is inevitably increased.